The present invention relates to error concealment, and more particularly, to concealing errors in texture partition of a video packet.
In an MPEG-4 decoder used for real-time streaming, when an error is detected in the texture partition of a video packet, substantially all decoded texture information of that packet is often discarded. In video data, texture represents luminance and chrominance information of the pixels in the frame. The region of the video frame corresponding to this corrupted packet may then be generated by error correction process. However, traditional error detection and correction systems may require a significant amount of overhead as well as significant amount of data processing when decoding coded video bit stream signals. Thus, current video decoding systems may rely on error concealment techniques for effective video streaming. In contrast to error correction, which attempts to reconstruct lost or corrupt data, error concealment aims to generate data that may be substituted for the lost or corrupt data. Discrepancies in image created by the generated data (generally at the macroblock level) are not likely to be perceived by a viewer of a video image that utilizes such error concealment.
Motion compensated temporal replacement may be an appropriate error concealment technique in video frames without much scene changes. This technique uses motion information to propagate macroblocks of the texture data from the previous frame to replace the texture data of the corrupted macroblocks in the current frame. Thus, this technique may provide effective error concealment as long as motion information can be obtained without much error. However, there are times when the texture data cannot be adequately concealed just by copying texture data from the previous frame at some motion compensated displacement.